<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" >

  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/turbolinks/5.2.0/turbolinks.js" integrity="sha256-iM4Yzi/zLj/IshPWMC1IluRxTtRjMqjPGd97TZ9yYpU=" crossorigin="anonymous"></script>
  <link href="https://fonts.googleapis.com/css?family=Roboto+Mono" rel="stylesheet">
  <link href="https://fonts.googleapis.com/css?family=Cousine|Inconsolata" rel="stylesheet">
  <link rel="shortcut icon" type="image/png" href="/favicon.png">

  <link rel="stylesheet" href="/css/style.css">
  <link rel="stylesheet" href="/css/css/fontawesome-all.min.css">
  <link rel="stylesheet" href="/css/css/work-sans-v7.css">
  <script src="/js/main.js"></script>

  <!-- Begin Jekyll SEO tag v2.6.1 -->
<title>Forum/Market Bandwidth | Hive Developer</title>
<meta name="generator" content="Jekyll v4.0.0" />
<meta property="og:title" content="Forum/Market Bandwidth" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="How to interpret raw bandwidth data." />
<meta property="og:description" content="How to interpret raw bandwidth data." />
<link rel="canonical" href="forum-market-bandwidth.html" />
<meta property="og:url" content="forum-market-bandwidth.html" />
<meta property="og:site_name" content="Hive Developer" />
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2020-08-26T11:52:22-07:00" />
<script type="application/ld+json">
{"description":"How to interpret raw bandwidth data.","mainEntityOfPage":{"@type":"WebPage","@id":"forum-market-bandwidth.html"},"@type":"BlogPosting","url":"forum-market-bandwidth.html","headline":"Forum/Market Bandwidth","dateModified":"2020-08-26T11:52:22-07:00","datePublished":"2020-08-26T11:52:22-07:00","@context":"https://schema.org"}</script>
<!-- End Jekyll SEO tag -->


  
</head>
<body>
<header>
  <h1>
    <button type="button" class="open-nav" id="open-nav"></button>
    <a href="/"  class="logo-link"><img src="/images/logotype_black.svg" height="40" alt="Hive Developer logo"></a>
  </h1>

  
  <form action="/search/" method="get">
    <input type="text" name="q" id="search-input" placeholder="Search">
    <input type="submit" value="Search" style="display: none;">
  </form>
  

  <div id="sidebar" class="sidebar">
	
	
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/">
		<h6 class="ctrl-nav-section title">Introduction</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/#introduction-welcome">Welcome to Hive</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/quickstart/">
		<h6 class="ctrl-nav-section title">Quickstart</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/quickstart/#quickstart-choose-library">Choose Library</a></li>
						
					
						
						<li><a href="/quickstart/#quickstart-hive-full-nodes">Hive Nodes</a></li>
						
					
						
						<li><a href="/quickstart/#quickstart-testnet">Hive Testnet</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/tutorials/">
		<h6 class="ctrl-nav-section title">Tutorials</h6>
		<ul class="cont-nav-section content">
			
				
					
						<li><a href="/tutorials/#tutorials-javascript">Javascript</a></li>
					
				
					
						<li><a href="/tutorials/#tutorials-python">Python</a></li>
					
				
					
						<li><a href="/tutorials/#tutorials-ruby">Ruby</a></li>
					
				
					
						<li><a href="/tutorials/#tutorials-recipes">Recipes</a></li>
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/services/">
		<h6 class="ctrl-nav-section title">Services</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/services/#services-hive-blog">hive.blog</a></li>
						
					
						
						<li><a href="/services/#services-hivesigner">HiveSigner</a></li>
						
					
						
						<li><a href="/services/#services-jussi">Jussi</a></li>
						
					
						
						<li><a href="/services/#services-imagehoster">ImageHoster</a></li>
						
					
						
						<li><a href="/services/#services-dhf">DHF</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/apidefinitions/">
		<h6 class="ctrl-nav-section title">Appbase API</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/apidefinitions/#apidefinitions-condenser-api">Condenser Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-bridge">Bridge</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-account-by-key-api">Account By Key Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-account-history-api">Account History Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-block-api">Block Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-database-api">Database Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-debug-node-api">Debug Node Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-follow-api">Follow Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-jsonrpc">Jsonrpc</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-market-history-api">Market History Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-network-broadcast-api">Network Broadcast Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-rc-api">Rc Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-reputation-api">Reputation Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-rewards-api">Rewards Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-tags-api">Tags Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-transaction-status-api">Transaction Status Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-witness-api">Witness Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-broadcast-ops">Broadcast Ops</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-broadcast-ops-communities">Broadcast Ops Communities</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/resources/">
		<h6 class="ctrl-nav-section title">Resources</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/resources/#resources-overview">Overview</a></li>
						
					
						
						<li><a href="/resources/#resources-client-libs">Client Libraries</a></li>
						
					
						
						<li><a href="/resources/#resources-bluepaper">Bluepaper</a></li>
						
					
						
						<li><a href="/resources/#resources-whitepaper">Whitepaper</a></li>
						
					
						
						<li><a href="/resources/#resources-tools">Tools</a></li>
						
					
						
						<li><a href="/resources/#resources-hivesigner-libs">Hivesigner Libs</a></li>
						
					
						
						<li><a href="/resources/#resources-hive-keychain">Hive Keychain</a></li>
						
					
						
						<li><a href="/resources/#resources-developeradvocate">Community & Help</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/glossary/">
		<h6 class="ctrl-nav-section title">Glossary</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/glossary/#glossary-chain-basics">Chain Basics</a></li>
						
					
						
					
						
						<li><a href="/glossary/#glossary-governance">Governance</a></li>
						
					
						
						<li><a href="/glossary/#glossary-transactions">Transactions</a></li>
						
					
						
						<li><a href="/glossary/#glossary-api">API</a></li>
						
					
						
						<li><a href="/glossary/#glossary-market">Market</a></li>
						
					
				
			
		</ul>
	</section>
	
</div>



  <link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet">
</header>
<div class="main" id="top">
  <div class="hero">
    <h1 class="hero__h1">Hive Developer Portal </h1>
    <img class="hero__img" src="/images/honey-comb-92.png" style="position: relative; top: 10px;" />
  </div>
  <section id="tutorials-recipes-forum-market-bandwidth" class="row tutorials-recipes-forum-market-bandwidth">
	<h3>
		<a id="tutorials-recipes-forum-market-bandwidth">
			Forum/Market Bandwidth
			
		</a>
	</h3>
	
		<span class="description"><p>How to interpret raw bandwidth data.</p>
</span>
	

	<h3 id="intro">Intro</h3>

<h4 class="danger well">
  Please note, Bandwidth has been replaced by <a href="/search/?q=resource+credits">Resource Credits</a>.  This document is outdated and will remain in place to give historical context prior to HF20.  Also see: <a href="https://github.com/steemit/steem/wiki/RC-Bandwidth-System">RC Bandwidth System</a>, <a href="https://github.com/steemit/steem/releases/tag/v0.20.2">0.20.2 Release Notes</a>, <a href="https://steemit.com/steem/@steemitdev/developer-guide-resource-credit-system">Developer Guide: Resource Credit System</a>
</h4>

<p>We’re going over the various API calls needed to determine the remaining bandwidth available to a particular account.  As mentioned in the <a href="https://steem.io/steem-whitepaper.pdf">STEEM Whitepaper</a>:</p>

<blockquote>
  <p>Bandwidth used by an individual user should be measured over a suitably long period of time to allow that
user to time-shift their usage. Users tend to login, do many things at once, then logout. This means that
their bandwidth over a short period of time may appear much higher than if viewed over a longer period of
time. If the time window is stretched too far, then the reserve ratio will not adjust fast enough to respond
to short-term surges; conversely, if the window is too short then clustering usage will have too big of an
impact on normal users.</p>
</blockquote>

<p>Bandwidth is specific to each account and depends on account activity.</p>

<h3 id="sections">Sections</h3>

<ol>
  <li><a href="#getting-account-bandwidth">Getting Account Bandwidth</a></li>
  <li><a href="#dynamic-global-properties">Dynamic Global Properties</a></li>
  <li><a href="#account-steem-power">Account STEEM Power</a></li>
  <li><a href="#calculate">Calculate</a></li>
</ol>

<h3 id="getting-account-bandwidth">Getting Account Bandwidth</h3>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>curl <span class="nt">-s</span> <span class="nt">--data</span> <span class="s1">'{
   "jsonrpc":"2.0",
   "method":"condenser_api.get_account_bandwidth",
   "params":[
      "cheetah",
      "forum"
   ],
   "id":1
}'</span> https://api.steemit.com
</code></pre></div></div>

<div class="language-json highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="p">{</span><span class="w">
   </span><span class="nl">"jsonrpc"</span><span class="p">:</span><span class="s2">"2.0"</span><span class="p">,</span><span class="w">
   </span><span class="nl">"result"</span><span class="p">:{</span><span class="w">
      </span><span class="nl">"id"</span><span class="p">:</span><span class="mi">20846</span><span class="p">,</span><span class="w">
      </span><span class="nl">"account"</span><span class="p">:</span><span class="s2">"cheetah"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"type"</span><span class="p">:</span><span class="s2">"forum"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"average_bandwidth"</span><span class="p">:</span><span class="s2">"7525646416619"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"lifetime_bandwidth"</span><span class="p">:</span><span class="s2">"386010589000000"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"last_bandwidth_update"</span><span class="p">:</span><span class="s2">"2018-07-18T16:37:54"</span><span class="w">
   </span><span class="p">},</span><span class="w">
   </span><span class="nl">"id"</span><span class="p">:</span><span class="mi">1</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre></div></div>

<p>In this example, we got forum (blogging) average bandwidth of 7,525,646,416,619 with a lifetime bandwidth of 386,010,589,000,000.</p>

<p>Note, <code class="highlighter-rouge">average_bandwidth</code> is expressed as an integer with six decimal places represented.  Divide by 1,000,000 in order to get the actual bytes of bandwidth, in this case: 7,525,646 bytes.</p>

<h3 id="dynamic-global-properties">Dynamic Global Properties</h3>

<p>To do the calculation, we need <code class="highlighter-rouge">max_virtual_bandwidth</code> and <code class="highlighter-rouge">total_vesting_shares</code> from the global properties, e.g.:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>curl <span class="nt">-s</span> <span class="nt">--data</span> <span class="s1">'{"jsonrpc":"2.0", "method":"condenser_api.get_dynamic_global_properties", "params":[], "id":1}'</span> https://api.steemit.com
</code></pre></div></div>

<div class="language-json highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="p">{</span><span class="w">
   </span><span class="nl">"id"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
   </span><span class="nl">"jsonrpc"</span><span class="p">:</span><span class="s2">"2.0"</span><span class="p">,</span><span class="w">
   </span><span class="nl">"result"</span><span class="p">:{</span><span class="w">
      </span><span class="nl">"head_block_number"</span><span class="p">:</span><span class="mi">24264289</span><span class="p">,</span><span class="w">
      </span><span class="nl">"head_block_id"</span><span class="p">:</span><span class="s2">"01723e6156ad44ac7bf3028a53a7ac642084cb39"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"time"</span><span class="p">:</span><span class="s2">"2018-07-17T20:25:27"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"current_witness"</span><span class="p">:</span><span class="s2">"followbtcnews"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"total_pow"</span><span class="p">:</span><span class="mi">514415</span><span class="p">,</span><span class="w">
      </span><span class="nl">"num_pow_witnesses"</span><span class="p">:</span><span class="mi">172</span><span class="p">,</span><span class="w">
      </span><span class="nl">"virtual_supply"</span><span class="p">:</span><span class="s2">"283443693.176 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"current_supply"</span><span class="p">:</span><span class="s2">"271786073.683 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"confidential_supply"</span><span class="p">:</span><span class="s2">"0.000 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"current_sbd_supply"</span><span class="p">:</span><span class="s2">"15504633.926 SBD"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"confidential_sbd_supply"</span><span class="p">:</span><span class="s2">"0.000 SBD"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"total_vesting_fund_steem"</span><span class="p">:</span><span class="s2">"193007548.472 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"total_vesting_shares"</span><span class="p">:</span><span class="s2">"391468555319.000697 VESTS"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"total_reward_fund_steem"</span><span class="p">:</span><span class="s2">"0.000 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"total_reward_shares2"</span><span class="p">:</span><span class="s2">"0"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"pending_rewarded_vesting_shares"</span><span class="p">:</span><span class="s2">"382967391.274340 VESTS"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"pending_rewarded_vesting_steem"</span><span class="p">:</span><span class="s2">"187173.234 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"sbd_interest_rate"</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="w">
      </span><span class="nl">"sbd_print_rate"</span><span class="p">:</span><span class="mi">2966</span><span class="p">,</span><span class="w">
      </span><span class="nl">"maximum_block_size"</span><span class="p">:</span><span class="mi">65536</span><span class="p">,</span><span class="w">
      </span><span class="nl">"current_aslot"</span><span class="p">:</span><span class="mi">24341309</span><span class="p">,</span><span class="w">
      </span><span class="nl">"recent_slots_filled"</span><span class="p">:</span><span class="s2">"340282366920938463463374607431768211455"</span><span class="p">,</span><span class="w">
      </span><span class="nl">"participation_count"</span><span class="p">:</span><span class="mi">128</span><span class="p">,</span><span class="w">
      </span><span class="nl">"last_irreversible_block_num"</span><span class="p">:</span><span class="mi">24264271</span><span class="p">,</span><span class="w">
      </span><span class="nl">"vote_power_reserve_rate"</span><span class="p">:</span><span class="mi">10</span><span class="p">,</span><span class="w">
      </span><span class="nl">"average_block_size"</span><span class="p">:</span><span class="mi">13436</span><span class="p">,</span><span class="w">
      </span><span class="nl">"current_reserve_ratio"</span><span class="p">:</span><span class="mi">200000000</span><span class="p">,</span><span class="w">
      </span><span class="nl">"max_virtual_bandwidth"</span><span class="p">:</span><span class="s2">"264241152000000000000"</span><span class="w">
   </span><span class="p">}</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre></div></div>

<h3 id="account-steem-power">Account STEEM Power</h3>

<p>We also need to know how much the account has in STEEM Power from <code class="highlighter-rouge">vesting_shares</code> and <code class="highlighter-rouge">received_vesting_shares</code>:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>curl <span class="nt">-s</span> <span class="nt">--data</span> <span class="s1">'{"jsonrpc":"2.0", "method":"condenser_api.get_accounts", "params":[["cheetah"]], "id":1}'</span> https://api.steemit.com
</code></pre></div></div>

<div class="language-json highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="p">{</span><span class="w">
   </span><span class="nl">"jsonrpc"</span><span class="p">:</span><span class="s2">"2.0"</span><span class="p">,</span><span class="w">
   </span><span class="nl">"result"</span><span class="p">:[</span><span class="w">
      </span><span class="p">{</span><span class="w">
         </span><span class="nl">"id"</span><span class="p">:</span><span class="mi">25796</span><span class="p">,</span><span class="w">
         </span><span class="nl">"name"</span><span class="p">:</span><span class="s2">"cheetah"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"owner"</span><span class="p">:{</span><span class="w">
            </span><span class="nl">"weight_threshold"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
            </span><span class="nl">"account_auths"</span><span class="p">:[],</span><span class="w">
            </span><span class="nl">"key_auths"</span><span class="p">:[[</span><span class="s2">"STM7yFmwPSKUP7FCV7Ut9Aev5cwfDzJZixcreS1U3ha36XG47ZpqT"</span><span class="p">,</span><span class="w"> </span><span class="mi">1</span><span class="p">]]</span><span class="w">
         </span><span class="p">},</span><span class="w">
         </span><span class="nl">"active"</span><span class="p">:{</span><span class="w">
            </span><span class="nl">"weight_threshold"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
            </span><span class="nl">"account_auths"</span><span class="p">:[],</span><span class="w">
            </span><span class="nl">"key_auths"</span><span class="p">:[[</span><span class="s2">"STM7yFmwPSKUP7FCV7Ut9Aev5cwfDzJZixcreS1U3ha36XG47ZpqT"</span><span class="p">,</span><span class="w"> </span><span class="mi">1</span><span class="p">]]</span><span class="w">
         </span><span class="p">},</span><span class="w">
         </span><span class="nl">"posting"</span><span class="p">:{</span><span class="w">
            </span><span class="nl">"weight_threshold"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
            </span><span class="nl">"account_auths"</span><span class="p">:[[</span><span class="s2">"anyx"</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">]],</span><span class="w">
            </span><span class="nl">"key_auths"</span><span class="p">:[[</span><span class="s2">"STM5bicRFWhpxnwBymo2HHJv6mFLiaP6AwVVsFEnnVjVcqbvqzvFt"</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">],</span><span class="w"> </span><span class="p">[</span><span class="s2">"STM7yFmwPSKUP7FCV7Ut9Aev5cwfDzJZixcreS1U3ha36XG47ZpqT"</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">],</span><span class="w"> </span><span class="p">[</span><span class="s2">"STM8Jn23vNmBzVuDAgQeZzzR17LmruENmmZmv1ra53tbsBgYbJFwk"</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">]]</span><span class="w">
         </span><span class="p">},</span><span class="w">
         </span><span class="nl">"memo_key"</span><span class="p">:</span><span class="s2">"STM7yFmwPSKUP7FCV7Ut9Aev5cwfDzJZixcreS1U3ha36XG47ZpqT"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"json_metadata"</span><span class="p">:</span><span class="s2">"{</span><span class="se">\"</span><span class="s2">profile</span><span class="se">\"</span><span class="s2">:{</span><span class="se">\"</span><span class="s2">profile_image</span><span class="se">\"</span><span class="s2">:</span><span class="se">\"</span><span class="s2">https:</span><span class="se">\/\/</span><span class="s2">c1.staticflickr.com</span><span class="se">\/</span><span class="s2">6</span><span class="se">\/</span><span class="s2">5739</span><span class="se">\/</span><span class="s2">22389343016_25d10c52a3_b.jpg</span><span class="se">\"</span><span class="s2">,</span><span class="se">\"</span><span class="s2">about</span><span class="se">\"</span><span class="s2">:</span><span class="se">\"</span><span class="s2">I am a robot that automatically finds similar content. Check the website linked to on my blog to learn more about me!</span><span class="se">\"</span><span class="s2">,</span><span class="se">\"</span><span class="s2">website</span><span class="se">\"</span><span class="s2">:</span><span class="se">\"</span><span class="s2">http:</span><span class="se">\/\/</span><span class="s2">steemit.com</span><span class="se">\/</span><span class="s2">steemit</span><span class="se">\/</span><span class="s2">@cheetah</span><span class="se">\/</span><span class="s2">faq-about-cheetah</span><span class="se">\"</span><span class="s2">}}"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"proxy"</span><span class="p">:</span><span class="s2">""</span><span class="p">,</span><span class="w">
         </span><span class="nl">"last_owner_update"</span><span class="p">:</span><span class="s2">"1970-01-01T00:00:00"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"last_account_update"</span><span class="p">:</span><span class="s2">"2017-06-13T00:14:00"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"created"</span><span class="p">:</span><span class="s2">"2016-07-17T08:47:18"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"mined"</span><span class="p">:</span><span class="kc">true</span><span class="p">,</span><span class="w">
         </span><span class="nl">"recovery_account"</span><span class="p">:</span><span class="s2">"steem"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"last_account_recovery"</span><span class="p">:</span><span class="s2">"1970-01-01T00:00:00"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"reset_account"</span><span class="p">:</span><span class="s2">"null"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"comment_count"</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="w">
         </span><span class="nl">"lifetime_vote_count"</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="w">
         </span><span class="nl">"post_count"</span><span class="p">:</span><span class="mi">517808</span><span class="p">,</span><span class="w">
         </span><span class="nl">"can_vote"</span><span class="p">:</span><span class="kc">true</span><span class="p">,</span><span class="w">
         </span><span class="nl">"voting_power"</span><span class="p">:</span><span class="mi">1249</span><span class="p">,</span><span class="w">
         </span><span class="nl">"last_vote_time"</span><span class="p">:</span><span class="s2">"2018-07-18T16:39:21"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"balance"</span><span class="p">:</span><span class="s2">"118.463 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"savings_balance"</span><span class="p">:</span><span class="s2">"0.000 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"sbd_balance"</span><span class="p">:</span><span class="s2">"67.717 SBD"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"sbd_seconds"</span><span class="p">:</span><span class="s2">"127094582318"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"sbd_seconds_last_update"</span><span class="p">:</span><span class="s2">"2018-07-18T14:13:15"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"sbd_last_interest_payment"</span><span class="p">:</span><span class="s2">"2018-06-20T12:01:15"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"savings_sbd_balance"</span><span class="p">:</span><span class="s2">"0.000 SBD"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"savings_sbd_seconds"</span><span class="p">:</span><span class="s2">"0"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"savings_sbd_seconds_last_update"</span><span class="p">:</span><span class="s2">"1970-01-01T00:00:00"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"savings_sbd_last_interest_payment"</span><span class="p">:</span><span class="s2">"1970-01-01T00:00:00"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"savings_withdraw_requests"</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="w">
         </span><span class="nl">"reward_sbd_balance"</span><span class="p">:</span><span class="s2">"0.005 SBD"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"reward_steem_balance"</span><span class="p">:</span><span class="s2">"0.009 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"reward_vesting_balance"</span><span class="p">:</span><span class="s2">"26.366463 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"reward_vesting_steem"</span><span class="p">:</span><span class="s2">"0.013 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"vesting_shares"</span><span class="p">:</span><span class="s2">"4770940.577823 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"delegated_vesting_shares"</span><span class="p">:</span><span class="s2">"0.000000 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"received_vesting_shares"</span><span class="p">:</span><span class="s2">"16020356.484882 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"vesting_withdraw_rate"</span><span class="p">:</span><span class="s2">"347124.891306 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"next_vesting_withdrawal"</span><span class="p">:</span><span class="s2">"2018-07-21T02:27:09"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"withdrawn"</span><span class="p">:</span><span class="s2">"1388499565224"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"to_withdraw"</span><span class="p">:</span><span class="s2">"4512623586985"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"withdraw_routes"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
         </span><span class="nl">"curation_rewards"</span><span class="p">:</span><span class="mi">170083</span><span class="p">,</span><span class="w">
         </span><span class="nl">"posting_rewards"</span><span class="p">:</span><span class="mi">37433355</span><span class="p">,</span><span class="w">
         </span><span class="nl">"proxied_vsf_votes"</span><span class="p">:[</span><span class="s2">"50341599736964"</span><span class="p">,</span><span class="w"> </span><span class="s2">"20169963876698"</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">],</span><span class="w">
         </span><span class="nl">"witnesses_voted_for"</span><span class="p">:</span><span class="mi">23</span><span class="p">,</span><span class="w">
         </span><span class="nl">"last_post"</span><span class="p">:</span><span class="s2">"2018-07-18T16:39:24"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"last_root_post"</span><span class="p">:</span><span class="s2">"2018-07-18T07:00:45"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"average_bandwidth"</span><span class="p">:</span><span class="s2">"7525467544963"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"lifetime_bandwidth"</span><span class="p">:</span><span class="s2">"386011530000000"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"last_bandwidth_update"</span><span class="p">:</span><span class="s2">"2018-07-18T16:39:24"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"average_market_bandwidth"</span><span class="p">:</span><span class="mi">2406616155</span><span class="p">,</span><span class="w">
         </span><span class="nl">"lifetime_market_bandwidth"</span><span class="p">:</span><span class="s2">"224370000000"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"last_market_bandwidth_update"</span><span class="p">:</span><span class="s2">"2018-07-12T04:57:36"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"vesting_balance"</span><span class="p">:</span><span class="s2">"0.000 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"reputation"</span><span class="p">:</span><span class="s2">"305786119478594"</span><span class="p">,</span><span class="w">
         </span><span class="nl">"transfer_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nl">"market_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nl">"post_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nl">"vote_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nl">"other_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nl">"witness_votes"</span><span class="p">:[</span><span class="w">
            </span><span class="s2">"anyx"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"arcange"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"ats-witness"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"ausbitbank"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"bitcoiner"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"blockchained"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"chitty"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"drakos"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"followbtcnews"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"fubar-bdhr"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"guiltyparties"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"liondani"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"lukestokes.mhth"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"neoxian"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"netuoso"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"noisy.witness"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"patrice"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"pfunk"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"pjau"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"teamsteem"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"thecryptodrive"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"themarkymark"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"timcliff"</span><span class="w">
         </span><span class="p">],</span><span class="w">
         </span><span class="nl">"tags_usage"</span><span class="p">:[],</span><span class="w">
         </span><span class="nl">"guest_bloggers"</span><span class="p">:[]</span><span class="w">
      </span><span class="p">}</span><span class="w">
   </span><span class="p">],</span><span class="w">
   </span><span class="nl">"id"</span><span class="p">:</span><span class="mi">1</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre></div></div>

<h3 id="calculate">Calculate</h3>

<p>Now, we can derive <code class="highlighter-rouge">bandwidth_allocated</code>:</p>

<p><code class="highlighter-rouge">bandwidth_allocated = max_virtual_bandwidth * (vesting_shares + received_vesting_shares) / total_vesting_shares</code></p>

<p><code class="highlighter-rouge">bandwidth_allocated = bandwidth_allocated / 1000000</code></p>

<p>In our example, <code class="highlighter-rouge">bandwidth_allocated = 14034118993</code>.</p>

<p>Now that we have both <code class="highlighter-rouge">bandwidth_allocated</code> and <code class="highlighter-rouge">average_bandwidth</code>, we can determine the percentages.</p>

<p>First, we need <code class="highlighter-rouge">average_bandwidth</code> on the same scale as <code class="highlighter-rouge">bandwidth_allocated</code>:</p>

<p><code class="highlighter-rouge">average_bandwidth = average_bandwidth / 1000000</code></p>

<p>Then we can get the percentages:</p>

<p><code class="highlighter-rouge">bandwidth_used = 100 * average_bandwidth / bandwidth_allocated</code></p>

<p><code class="highlighter-rouge">bandwidth_remaining = 100 - (100 * average_bandwidth / bandwidth_allocated)</code></p>

<p>We can see that <code class="highlighter-rouge">cheetah</code> has used <code class="highlighter-rouge">0.053 %</code> bandwidth and has <code class="highlighter-rouge">99.946 %</code> remaining as of <code class="highlighter-rouge">last_bandwidth_update</code>.</p>

</section>

</div>
<div class="footer">
  <a href="#">Back to top</a>
</div>
<script>
    document.getElementById("open-nav").addEventListener("click", function () {
        document.body.classList.toggle("nav-open");
    });
</script>
</body>
</html>


<script src="/js/adjust.js"></script>

